Telecommunication networks, and the features offered on those networks, are becoming larger and more complex. It is commonplace to see network features implemented in many network elements or so-called nodes, which are often located in different network domains. For example, the “SGSN in Pool” feature is implemented in Serving General Packet Radio Service (GPRS) Support Nodes (SGSNs) in the mobile core network and in Radio Network Controllers (RNCs) and Base Station Controller (BSCs) in Radio Access Networks.
Features in networks are increasingly implemented in software. The concept of software defined radio heralds an era where all radio and digital signalling processing is defined using software. Software embedded in network elements uses enabling technology such as web services and peer to peer techniques to implement advanced Self-Organizing Network (SON) features such as Automatic Neighbour Relations (ANR).
At present, the software for most network elements is bundled into a single load module. All of the software programs needed to implement the features supported by a network element (which may include part of network features) are packaged into this single load module. Ensuring that all network features are compatible across all nodes that implement a feature is handled as an off-line administrative activity.
A complex system is characterised by a plurality of interdependent components. Several methods can be applied to represent these dependencies. One of the most common way is to use directed graphs, which are composed of a set of vertices or nodes and a set of ordered pairs of vertices called arcs, directed edges or arrows. Paths then represent dependencies between components. Knowing that there is a path from node a to node b indicates that a is dependent on b, since a is affected if b changes. Such directed graphs may be represented in different ways, such as matrices, lists and nodes with pointers to their children and parents.
Another method of representing a complex system and its dependencies is by using Unified Modelling Language (UML) models. With the UML class diagram a system can be abstracted and various types of dependencies between the components of a system can be modelled. The advantage of UML over directed graph relies in the possibility of a more enriched representation of various aspects of the system, e.g. requirement for the dependency.
Semantic networks can also be used to represent dependencies in complex systems. A semantic network is a node and edge-labelled directed graph and therefore can be used to represent systems at more detailed granularity level. Semantic networks function to model semantic relations between the concepts and can be used either to represent knowledge or to support automated systems for reasoning about knowledge. Semantic Web technology can be used to represent semantic networks in a machine-readable way.
There exist several network model standards that could be used to assess feature compatibility among products from different vendors.
Firstly, the Common Information Model (CIM) is an open standard defined by Distributed Management Task Force (DMTF) and it describes managed entities, their composition and relationships. The management models are comprised of a Core Model and a set of Common Models (defined for systems, services, networks, applications, users, and databases) that extend from the Core.
Secondly, the Solution Deployment Descriptor (SDD) is a standard in the form of schema for XML documents, developed by the Organization for the Advancement of Structured Information Standards (OASIS) and defining a standardized way to express software installation characteristics required for lifecycle management in a multi-platform environment. The SDD defines schema for two Extensible Mark-up Language (XML) document types: (i) Package Descriptors and (ii) Deployment Descriptors. The package descriptor defines package content which includes artefacts whose processing results in deployment of the software package. The deployment descriptor defines metadata associated with those artefacts.
Thirdly, the Service Model Language (SML) is an XML schema specification used to model complex IT services and systems, including their structure, constraints, policies, and best practices. An SML model is a set of interrelated XML documents. An SML model could contain information about the parts of an IT service, as well as the constraints that each part must satisfy for the IT service to function properly.
Finally, the Network Resource Model (NRM) is defined by 3GPP and represents the actual managed telecommunications network resources that a System is providing through the subject Integration Reference Point (which is an architectural concept that is described by a set of specifications for definition of a certain aspect of a management interface, comprising a Requirements specification, an Information Service specification, and one or more Solution Set specifications). An NRM describes Managed Object Classes (MOCs), their associations, attributes and operations.
For most telecommunications nodes, software is deployed and installed as a single container that contains all of the software units for all features on that network element or node. The software for individual features is generally not installed separately on network elements. Any particular feature may be supported by a number of network elements.
This approach to software deployment is problematical because, as the number of network features increases, it becomes increasingly difficult to keep the software on each network element or node matched and verified with the software on other network elements or nodes around it.
Another problem is that there is no way of knowing which features are installed in the network because the software for a feature is deployed piecemeal on a node-by-node basis. Therefore, network operations staff cannot definitively say which features are installed on the network and if the software implementing those features is consistent and verified across the nodes that implement that feature.
We have now devised a method and apparatus for assessing the compatibility of a selected network feature with the network features of an existing telecommunications network, which alleviates the above-mentioned problems.